1. Technical Field of the Invention
The present invention relates to computer telephony systems, and more particularly, to methods and arrangements that allow a computer telephony system to utilize a contacts database for voice recognition supported automated dialing.
2. Description of Related Art
Computer telephony systems are becoming increasingly popular because they provide specific services, which in the past would have been cost prohibitive if provided by traditional telephone systems. Essentially, computer telephony system includes technologies that actively integrate computers and like devices to function as would a traditional telephone system and/or private branch exchange (PBX), but only on a smaller scale and/or at a significantly lower cost. While a computer telephony system can be a stand alone communication system, for example within a home or small business environment, it is more likely to also be connected to existing telecommunications systems, such as a public switched network (PTSN), and/or other data networks, such as a local area network (LAN). As such, most computer telephony systems are configured to provide users with several communication related features. Indeed, the inherent flexibility of a programmable computer telephony system allows for specialized and/or customized communication features to be provided, often with only a modest attendant increase in cost.
Of particular interest within computer telephony systems is the increased demand from users to integrate new and different types of devices and the need to support the portability of these devices. The increase in demand for mobile cellular radio telephones, personal digital assistants (PDAs), pagers, e-mail services, and facsimile services are prime examples of the changing requirements that users present, even in a small home and/or small business environment.
The resources available within a computer telephony system are uniquely positioned to meet the future needs of these service-rich users. To support these and other types of needs, however, there is a need to make the computer telephony system""s resources easier to access and use, especially for mobile users.
One promising way to make a computer telephony system easier to access and use is to include voice recognition capabilities within the computer telephony system that allow users to access certain features or even place calls by voice commands rather than by responding to prompts for numerical entries and/or otherwise entering the telephone number/extension for a party.
Configuring a computer telephony system to accurately support voice commands, such as, for example, a dial by name voice command, can be difficult. A typical name dialing computer telephony system employs a dedicated, often proprietary database that includes entries for each of the user""s names and telephone/extension numbers. These entries can be either manually entered into the database, or in certain systems spoken into the system and processed by an automatic speech recognition (ASR) engine, which generates a phoneme image that is then stored in the database.
When prompted, for example, during subsequent operation, a typical computer telephony system having dial by name capabilities will attempt to match received speech samples to the entries using phonemes. When there is a match, then the caller will typically be asked to verify that the match was correct. This verification process typically includes using a text-to-speech (TTS) engine to playback the name of the matched entry in the database. Once the match has been verified, the call is placed.
One of the drawbacks to these types of computer telephony systems is that they require a special database. Thus, the user is typically required to populate the database and to actively update and/or maintain the database. Establishing and maintaining this computer telephony database can be a burden to users who also utilize and maintain a separate, typically more general purpose contacts database.
For example, a contacts database can be generated through organizing, planning, and or scheduling software programs. A contacts database, therefore, usually includes additional information beyond simply a contact""s name and telephone number. By way of example, a contacts database can include street and e-mail addresses, relevant dates, related contacts, job titles, company name, fax number, favorite pub, and/or other miscellaneous notes and related information.
As can be appreciated, it would be advantageous for the computer telephony system to access the information in the contacts database directly, rather than requiring a separate database. Providing such a capability, however, can be a challenge due to the limitations in existing voice recognition software and the size/complexity of a typical contacts database. For example, there is a significant possibility that the accurate spelling of names that is required in a contacts database will not be recognizable to the automatic speech recognition (ASR) and text-to-speech (TTS) engines within the computer telephony system.
As such, users would need to either learn to pronounce names as the ASR/TTS engines do, or modify the spelling of the name in the database to essentially trick the ASR/TTS engines to select the name close to proper pronunciation. This iterative learning process would require that the user switch back and forth from accessing the dial by name feature to hear the interpretation, to modifying the contacts database in an attempt to correct the interpretation.
These types of solutions can be overly burdensome on the users, not only during initial set-up and maintenance, but also during continued operation. This is especially true for systems that require users to learn how to pronounce the names as the ASR/TTS engines do. These problems are only increased if the system is installed to support a large number of users, and/or users with diverse language based names.
Moreover, in those systems that require trick spelling of names, the integrity of the contacts database can be reduced, and/or the contacts database can be more difficult manage.
Thus, there is a need for improved methods and arrangements that allow a computer telephony system having dial by voice capabilities to access and utilize a contacts database.
The present invention provides improved methods and arrangements for use in a communications system, such as a computer telephony system having dial by voice capabilities, that allows users to place calls to contacts provided in a multiple purpose contacts database.
In accordance with certain aspects of the present invention, the improved methods and arrangements provide tools that allow a user to add one or more extensions to a contacts database for use by the voice recognition capabilities in a computer telephony system.
In accordance with certain further aspects of the present invention, the improved methods and arrangements allow users to directly playback one or more fields in the contacts database using the voice recognition capabilities of the computer telephony system.
Thus, for example, a contacts database can be configured for use by a computer telephony system by providing an image of at least a portion of the data in the contacts database, such as, a correctly spelled name field and corresponding telephone number for a given contact. This image of the contacts database, or a portion thereof, can be displayed to the user, for example, through a graphical user interface (GUI) in the computer telephony system. The user can then designate one or more contacts as being accessible through the voice recognition capabilities in the telephony system, for example, to support subsequent dial by name functionality.
In addition to the existing correctly spelled name field in the contacts database, the user can also add at least one phonetic pronunciation field to the contacts database, for example, for names that are difficult for the voice recognition capabilities to match. During subsequent operation, the voice recognition capabilities in the computer telephony system can access and/or evaluate the phonetic pronunciation field when necessary.
The user can also add at least one alias field to the contacts database that can also be accessed and/or evaluated by the voice recognition capabilities in the computer telephony system.
The user is also provided with the capability to initiate playback (for example, through a speaker connected within the computer telephony system) of either of these additional fields and/or the correctly spelled name field in the contacts database. Thus, for example, the data in these fields or a portion thereof can be directly provided to or otherwise directly accessed by the ASR/TTS engines within the computer telephony system and played for the user.
In accordance with certain further aspects of the present invention, the various improved methods and arrangements allow a computer telephony system to utilize a contacts database or a portion thereof for supporting dial by name functionality.
The contacts database can be a multiple purpose contacts database that is generated by a separate application and maintained through other computing resources. For example, the contacts database can include data stored with Messaging Application Programming Interface (MAPI), Open DataBase Connectivity (ODBC), Structured Query Language (SQL), comma separated values (CSV) or other similar formats, for example, using a separate software application. Further, the contacts database can be maintained on a separate (networked) personal computer (PC).